package com.ruoyi.monitor.Vo;

import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.monitor.domain.AutoSendTask;
import com.ruoyi.monitor.domain.SysMsg;
import com.ruoyi.quartz.domain.SysJob;

import java.util.Arrays;
import java.util.Date;
import java.util.List;

public class JobVo {
    private Long jobId;
    /** 任务名称 */
    private String jobName;
    /** cron执行表达式 */
    private String cronExpression;
    /** 描述*/
    private String expression;
    /** cron计划策略 */
    private String misfirePolicy;
    /** 是否并发执行（0允许 1禁止） */
    private String concurrent;
    /** 任务状态（0正常 1暂停） */
    private Date updateTime;
    private String status;
    private Long[] userIds;

    private List<AutoSendTask> tasks;

    private SysMsg msg;

    public List<AutoSendTask> getTasks() {
        return tasks;
    }

    public void setTasks(List<AutoSendTask> tasks) {
        this.tasks = tasks;
    }

    public String getExpression() {
        return expression;
    }

    public void setExpression(String expression) {
        this.expression = expression;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Long getJobId() {
        return jobId;
    }

    public void setJobId(Long jobId) {
        this.jobId = jobId;
    }

    public Long[] getUserIds() {
        return userIds;
    }

    public void setUserIds(Long[] userIds) {
        this.userIds = userIds;
    }

    public SysMsg getMsg() {
        return msg;
    }

    public void setMsg(SysMsg msg) {
        this.msg = msg;
    }

    public String getJobName() {
        return jobName;
    }

    public void setJobName(String jobName) {
        this.jobName = jobName;
    }

    public String getCronExpression() {
        return cronExpression;
    }

    public void setCronExpression(String cronExpression) {
        this.cronExpression = cronExpression;
    }

    public String getMisfirePolicy() {
        return misfirePolicy;
    }

    public void setMisfirePolicy(String misfirePolicy) {
        this.misfirePolicy = misfirePolicy;
    }

    public String getConcurrent() {
        return concurrent;
    }

    public void setConcurrent(String concurrent) {
        this.concurrent = concurrent;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Override
    public String toString() {
        return "JobVo{" +
                "jobId=" + jobId +
                ", jobName='" + jobName + '\'' +
                ", cronExpression='" + cronExpression + '\'' +
                ", expression='" + expression + '\'' +
                ", misfirePolicy='" + misfirePolicy + '\'' +
                ", concurrent='" + concurrent + '\'' +
                ", updateTime=" + updateTime +
                ", status='" + status + '\'' +
                ", userIds=" + Arrays.toString(userIds) +
                ", tasks=" + tasks +
                ", msg=" + msg +
                '}';
    }
}
